package com.gdufe.firesafe.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gdufe.firesafe.model.entity.InspectionEntity;
import com.gdufe.firesafe.model.entity.MessageEntity;

import java.util.List;

/**
 * 消息表
 *
 * @author Liu
 * @email
 * @date 2024-03-25 20:54:21
 */
public interface MessageService extends IService<MessageEntity> {

    /**
     * 评估各属性隐患紧急程度生成消息并存入数据库
     *
     * @param inspection
     * @return
     */
    MessageEntity saveByInspection(InspectionEntity inspection);

    /**
     * 获取未读消息数量
     * @return
     */
    Integer getUnreadCount();

    /**
     * 获取未读消息列表
     * @return
     */
//    List<MessageEntity> getUnreadList();

    /**
     * 根据消息筛选类型获取消息列表
     * @param type
     * @return
     */
    List<MessageEntity> list(Integer type);

    /**
     * 标记当前用户所有消息为已读
     *
     * @return
     */
    boolean readAll();

    /**
     * 标记当前用户某条消息为已读
     * @param messageId
     * @return
     */
    boolean read(Integer messageId);
}

